//目标：创建服务器，监听两个url地址
//一个用来显示 post.html 页面
//另一个用来接收 post.html 页面中表单提交数据
const http = require('http');
const server = http.createServer();
server.listen(3000,()=>{
  console.log('server is running');
});
const fs = require('fs');
const path = require('path');
server.on('request',(req,res)=>{
  const url = req.url;
  // console.log(url);
  if(url === '/post'){
    //显示 post.html 页面
    fs.readFile(path.join(__dirname,'view/post.html'),(err,data)=>{
      if(err){
        console.log(err);
        return res.end('404 not found');
      }
        res.end(data);
    })
  }else if(url === '/post/Data'){
    //接收表单提交的数据
    //127.0.0.1:3000/post/Data
    //定义一个空字符串用来接收post表单提交的数据
    //因表单数据量大，data接收到的表单数据被分割成一份一份的，数据是一份一份的循环发过来的
    //所以提前定义一个空字符串，用来接收循环发过来的数据，进行拼接
    let str = '';
    //接收表单提交的数据
    //使用data事件用来接收表单提交的数据（通过req.on方法 进行注册data事件）
    //参数1：事件类型，data事件用来接收表单数据
    //参数2：回调函数，该函数中有一个参数，就是表单提交的数据
    req.on('data',(chunk)=>{
      str += chunk;
    });
    //当data事件接收数据完成之后，会自动触发end事件，在end事件中可以操作接收到的表单数据
    //参数1：事件类型
    //参数2：回调函数
    req.on('end',()=>{
      //str的结构：key1=value1&key2=value2&... 的结构
      console.log(str);
    })
  }else{
    res.end('404');
  }
})